CREATE TABLE [dbo].[WorkOrderMain]
(
[WorkOrderKey] [uniqueidentifier] NOT NULL,
[OrderKey] [uniqueidentifier] NOT NULL,
[OrderNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[OrderTypeKey] [uniqueidentifier] NOT NULL,
[OrderDate] [datetime] NOT NULL,
[OrderStateCode] [int] NOT NULL CONSTRAINT [DF_WorkOrderMain_OrderStateCode] DEFAULT ((0)),
[CultureCode] [nvarchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[DiscountCode] [nvarchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LineTotal] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_LineTotal] DEFAULT ((0)),
[LineTotalHome] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_LineTotalHome] DEFAULT ((0)),
[Discount] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_Discount] DEFAULT ((0)),
[MiscChargeTotal] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_MiscChargeTotal] DEFAULT ((0)),
[MiscChargeTotalHome] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_MiscChargeTotalHome] DEFAULT ((0)),
[ShippingTotal] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_ShippingTotal] DEFAULT ((0)),
[ShippingTotalHome] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_ShippingTotalHome] DEFAULT ((0)),
[IsShippingFixed] [bit] NULL,
[TaxTotal] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_TaxTotal] DEFAULT ((0)),
[TaxTotalHome] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_TaxTotalHome] DEFAULT ((0)),
[OrderTotal] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_OrderTotal] DEFAULT ((0)),
[OrderTotalHome] [decimal] (18, 4) NOT NULL CONSTRAINT [DF_WorkOrderMain_OrderTotalHome] DEFAULT ((0)),
[DefaultWarehouseKey] [uniqueidentifier] NULL,
[SoldToContactKey] [uniqueidentifier] NOT NULL,
[SoldToFullAddressKey] [uniqueidentifier] NULL,
[BillToContactKey] [uniqueidentifier] NOT NULL,
[BillToFullAddressKey] [uniqueidentifier] NULL,
[CurrencyCode] [nchar] (3) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[ConversionRate] [decimal] (12, 4) NULL,
[ReqShipDate] [datetime] NULL,
[SourceCodeKey] [uniqueidentifier] NULL,
[Description] [nvarchar] (100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Instructions] [nvarchar] (100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[OrigOrderNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[RetAuthNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[SalesLocationKey] [uniqueidentifier] NULL,
[IsReturn] [bit] NOT NULL CONSTRAINT [DF_WorkOrderMain_IsReturn] DEFAULT ((0)),
[ReasonCodeKey] [uniqueidentifier] NULL,
[UpdatedOn] [datetime] NOT NULL,
[UpdatedByUserKey] [uniqueidentifier] NOT NULL,
[PurchaseOrderNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[IsReturnFullOrder] [bit] NOT NULL CONSTRAINT [DF_WorkOrderMain_IsReturnFullOrder] DEFAULT ((0)),
[FinancialEntityKey] [uniqueidentifier] NULL,
[PriceSheetKey] [uniqueidentifier] NULL,
[OrigInvoiceNumber] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HoldCodeKey] [uniqueidentifier] NULL,
[HoldNote] [nvarchar] (100) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PaymentTermsKey] [uniqueidentifier] NULL,
[BackorderReleasePriority] [int] NOT NULL CONSTRAINT [DF_WorkOrderMain_BackorderReleasePriority] DEFAULT ((0)),
[ResponseMediaCode] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[CommissionPlanKey] [uniqueidentifier] NULL,
[SalesTeamGroupKey] [uniqueidentifier] NULL,
[SystemEntityKey] [uniqueidentifier] NOT NULL,
[AccessKey] [uniqueidentifier] NOT NULL,
[CreatedByUserKey] [uniqueidentifier] NOT NULL,
[CreatedOn] [datetime] NOT NULL,
[OwnerGroupKey] [uniqueidentifier] NULL,
[FirstPaymentDueDate] [datetime] NULL,
[MarkedForDeleteOn] [datetime] NULL,
[BatchKey] [uniqueidentifier] NULL,
[OriginatingBatchKey] [uniqueidentifier] NULL,
[BatchLineStatusCode] [int] NULL,
[BatchStatusMessage] [nvarchar] (200) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Blob] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [PK_WorkOrderMain] PRIMARY KEY CLUSTERED ([WorkOrderKey]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_AccessMain] FOREIGN KEY ([AccessKey]) REFERENCES [dbo].[AccessMain] ([AccessKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_ContactMain_BillTo] FOREIGN KEY ([BillToContactKey]) REFERENCES [dbo].[ContactMain] ([ContactKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_ContactMain_SoldTo] FOREIGN KEY ([SoldToContactKey]) REFERENCES [dbo].[ContactMain] ([ContactKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_FullAddress_BillTo] FOREIGN KEY ([BillToFullAddressKey]) REFERENCES [dbo].[FullAddress] ([FullAddressKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_FullAddress_SoldTo] FOREIGN KEY ([SoldToFullAddressKey]) REFERENCES [dbo].[FullAddress] ([FullAddressKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_GroupMain] FOREIGN KEY ([SalesTeamGroupKey]) REFERENCES [dbo].[GroupMain] ([GroupKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_GroupMain_Owner] FOREIGN KEY ([OwnerGroupKey]) REFERENCES [dbo].[GroupMain] ([GroupKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_Locale] FOREIGN KEY ([CultureCode]) REFERENCES [dbo].[CultureRef] ([CultureCode])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_OrderStateRef] FOREIGN KEY ([OrderStateCode]) REFERENCES [dbo].[OrderStateRef] ([OrderStateCode])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_ResponseMediaRef] FOREIGN KEY ([ResponseMediaCode]) REFERENCES [dbo].[ResponseMediaRef] ([ResponseMediaCode])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_SystemEntity] FOREIGN KEY ([SystemEntityKey]) REFERENCES [dbo].[SystemEntity] ([SystemEntityKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_UniformRegistry] FOREIGN KEY ([WorkOrderKey]) REFERENCES [dbo].[UniformRegistry] ([UniformKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_UserMain_CreatedBy] FOREIGN KEY ([CreatedByUserKey]) REFERENCES [dbo].[UserMain] ([UserKey])
GO
ALTER TABLE [dbo].[WorkOrderMain] ADD CONSTRAINT [FK_WorkOrderMain_UserMain_UpdatedBy] FOREIGN KEY ([UpdatedByUserKey]) REFERENCES [dbo].[UserMain] ([UserKey])
GO